Docker中运行redis报错误: Failed opening the RDB file root (in server root dir /etc/cron.d) for saving: Permission denied |
您所在的位置:网站首页 › redis启动报错no such file › Docker中运行redis报错误: Failed opening the RDB file root (in server root dir /etc/cron.d) for saving: Permission denied |
错误信息: 1:M 23 Dec 2021 19:53:02.058 * Background saving started by pid 18481848:C 23 Dec 2021 19:53:02.058 # Failed opening the RDB file backup.db (in server root dir /etc) for saving: Permission denied1:M 23 Dec 2021 19:53:02.158 # Background saving error1:M 23 Dec 2021 19:53:03.010 # Failed opening the RDB file root (in server root dir /etc) for saving: Permission denied1:M 23 Dec 2021 19:53:03.073 # Failed opening the RDB file root (in server root dir /etc) for saving: Permission denied1:M 23 Dec 2021 19:53:03.103 # Failed opening the RDB file root (in server root dir /etc) for saving: Permission denied1:M 23 Dec 2021 19:53:04.227 # Failed opening the RDB file zzh (in server root dir /etc/cron.d) for saving: Permission denied1:M 23 Dec 2021 19:53:04.323 # Failed opening the RDB file crontab (in server root dir /etc) for saving: Permission denied问题原因 Background saving这个是Redis用来保存以RDB模式运行的当前快照的线程所写入的日志. redis的不安全访问,导致配置被修改. 攻击者想利用redis直接修改crontab配置,实现一些定时任务写入,从而去执行一些"特殊"命令(比如,挖矿等),甚至掌控服务器. 解决方法 永久方法 1.修改配置文件 requirepass 123456 # 123456 换成你的密码下面部分不影响,但是是更安全的做法.redis3.2后可用. bind 0.0.0.0 # 绑定到具体地址protected-mode yes # 开启保护模式,该模式将需配置bind ip或者设置访问密码临时方法 通过redis-cli进入redis客户端,然后通过config设置密码(直到重启前有效). config get requirepass # 查看当前密码1) "requirepass"2) ""如果结果如上,则表明当前没有密码. (error) NOAUTH Authentication required.如上则表示有密码,而你是未授权访问的. 设置新密码: config set requirepass # 替换成你的密码通过 config get检查是否设置成功.设置成功后,通过下面命令认证: auth # 替换成你的密码get a如果能看到正常的返回值,就说明成功了. 这样就能避免别人轻易访问redis-server. 注意此处的密码长度最好比较长,比如10位以上,因为redis的速度太快了,通过暴力破解的可能性高于通常的http方式. 有任何需要沟通交流的联系QQ群:276483863 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |